home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / shells / scsh-0.4 / scsh-0 / scsh-0.4.2 / link-packages.scm < prev    next >
Text File  |  1995-10-13  |  2KB  |  102 lines

  1. ; Copyright (c) 1993, 1994 Richard Kelsey and Jonathan Rees.  See file COPYING.
  2.  
  3.  
  4. ; Static linker.  Doesn't work very well this way (debug info is
  5. ; screwed up), so it's probably better to continue using linker.image
  6. ; instead.
  7.  
  8. (define-structure linker linker-interface
  9.   (open scheme-level-2
  10.     tables compiler write-images debuginfo
  11.     packages
  12.     packages-internal       ;set-package-integrate?!
  13.     scan
  14.     syntactic        ;name->symbol        
  15.     reification
  16.     closures        ;make closure to pass to write-image
  17.     filenames
  18.     debug-data        ;with-fresh-compiler-state
  19.     locations
  20.     fluids
  21.     signals            ;error
  22.     util)            ;sublist
  23.   (files (link link)))
  24.  
  25. (define-structure reification (export reify-structures)
  26.   (open scheme-level-2
  27.     packages
  28.     packages-internal ;?
  29.     usual-macros        ;find-free-names-in-syntax-rules
  30.     syntactic        ;name-hash, etc.
  31.     meta-types            ;usual-variable-type
  32.     locations
  33.     tables records
  34.     signals            ;error
  35.     features        ;force-output
  36.     util            ;filter
  37.     inline)            ;name->extrinsic
  38.   (files (link reify)))
  39.  
  40. (define-structure expander expander-interface
  41.   (open scheme-level-2
  42.     syntactic packages scan meta-types reconstruction
  43.     bummed-define-record-types
  44.     util signals tables fluids)
  45.   (files (opt expand)))
  46.  
  47. (define-structure analysis (export analyze-forms)
  48.   (open scheme
  49.     syntactic packages scan inline meta-types expander
  50.     packages-internal    ;set-package-integrate?!
  51.     reconstruction
  52.     signals
  53.     locations
  54.     features        ;force-output
  55.     tables
  56.     fluids
  57.     util)
  58.   (files (opt analyze)))
  59.  
  60.  
  61. ; Database of procedure names 'n' stuff.
  62. ; (copy in more-packages.scm ...)
  63.  
  64. (define-structure debuginfo debuginfo-interface
  65.   (open scheme-level-2
  66.     tables
  67.     debug-data
  68.     packages
  69.     packages-internal
  70.     syntactic)
  71.   (files (env debuginfo)))
  72.  
  73.  
  74. ; Mumble.
  75.  
  76. (define-structure flatloading (export flatload)
  77.   (open scheme packages packages-internal filenames)
  78.   (files (env flatload)))
  79.  
  80. (define-structure loadc (export load-configuration
  81.                 ;; (structure-ref :syntax)
  82.                 )
  83.   (open scheme
  84.     environments        ; *structure-ref
  85.     syntactic        ; $source-file-name
  86.     fluids)
  87.   (files (link loadc)))
  88.  
  89.  
  90. ; Everything.
  91.  
  92. (define-structure link-config (export )  ;dummy structure...
  93.   (open linker
  94.     defpackage
  95.     types
  96.     analysis
  97.     loadc
  98.     flatloading
  99.     interfaces)
  100.   ;; (files (alt init-defpackage.scm))  -- or (env ...), depending
  101.   )
  102.